ATM exchange for monitoring congestion and allocating and transmitting bandwidth-guaranteed and non-bandwidth-guaranteed connection calls

ABSTRACT

An ATM including both a bandwidth-guaranteed connection call and a non-bandwidth-guaranteed connection call together, with respect to the bandwidth-guaranteed connection call, a scheduler 21 allocates the number of time slots which correspond to a required bandwidth to the bandwidth-guaranteed connection call from among the N time slots which constitute one period and so controls as to transmit an ATM cell at an allocated time slot. A non-bandwidth-guaranteed cell transmitting element 31 transmits an ATM cell of a non-bandwidth-guaranteed connection call at a time slot which is not allocated at any bandwidth-guaranteed connection call. A congestion/normal state monitoring element 121 sets in advance a queue length which is regarded as the occurrence of a long-term congestion in a queuing buffer 111, and compares the actual queue length with the preset queue length so as to detect the occurrence of a long-term congestion.

TECHNICAL FIELD

The present invention relates to an ATM exchange and, more particularly,to an ATM exchange which is capable of maintaining a required QOS(quality of service) and which is capable of detecting a long-termcongestion and avoiding the congestion in a case where there aresimultaneously both a bandwidth-guaranteed connection call and anon-bandwidth-guaranteed connection call.

BACKGROUND ART

There is increasing demand not only for audio communication and datacommunication but also for multimedia communication in which movingpictures are transmitted as well as audio and data. As a means forrealizing such broadband communication, an agreement has been reachedupon an exchanging technique in a B-ISDN (Broadband-ISDN) system, whichis based on an asynchronous transfer mode (ATM), and the technique isbeing put to practical use.

In the ATM, all the information is converted into fixed informationwhich is called a cell without depending upon continuous informationsuch as an audio and a moving picture or burst information such as data,and transferred at high speed without depending upon the respectivecommunication speed. More specifically, in the ATM, a line is allocatedto a plurality of calls by establishing a multiplicity of logical linkson a physical line. The moving picture data and the audio datatransmitted from a terminal corresponding to each call are separatedinto information units (which are called cells) having a fixed length,and the cells are serially transmitted over a line, thereby realizingmultiplex communication.

Each cell is composed of a block having a fixed length of 53 bytes, asshown in FIG. 19. In the 53 bytes, 5 bytes constitute a header portionHD and 48 bytes an information field (information portion) DT. Theheader portion HD includes a virtual channel identifier (VCI) foridentifying a call so as to indicate the destination even after the datais separated into blocks. The header portion HD also includes a virtualpath identifier (VPI) for specifying a path, a generic flow control(GFC) which is used for flow control between links, a payload type (PT),a header error control (HEC) for correcting errors, etc.

(a) ATM Network

FIG. 20 schematically shows the structure of an ATM network so as toexplain ATM transmission. In FIG. 20, the reference numerals 1a, 1brepresent ATM terminals, and 3 an ATM network. The ATM network 3 isprovided with an information network 3a for transferring a data cell,and a signal network 3b for transferring a control signal. The callprocessing processor units (CPUs) 3d-1 to 3d-n of the ATM exchanges 3c-1to 3c-n in the information network 3a are connected to the signalnetwork 3b.

When the originating terminal 1a executes a calling operation so as tocall the terminating terminal 1b, the cell assembling portion of theoriginating terminal separates the SET UP message (data which includesthe originating number, the terminating number, the type of terminal,the average cell rate, the peak cell rate, etc.) into cell units,attaches a signal VCI (which is determined in advance for the respectiveterminal) to each divided data to form a signaling cell and supplies thesignaling cell to the ATM network 3.

When the signaling device of the ATM exchange 3c-1 (on the originatingside) receives the signaling cell, it assembles the informationcontained in the signaling cell and supplies the assembled informationto the CPU 3d-1. On the basis of the received message, the CPU executescalling such processing as processing for analyzing calling-partyservice, billing processing, processing for interpreting digits on theside of the terminating party, etc., determines a path (VPI) and avirtual channel identifier (VCI), and in accordance with a protocol No.7, supplies connection information which includes data such as theoriginating number, terminating number, VPI and VCI, to the subsequentrelay exchange 3c-2 via the signal network 3b. The relay exchange 3c-2executes similar processing to that of the exchange 3c-1 on theoriginating side. After repetition of similar processing, the paths andthe relay ATM exchanges 3c-2, 3c-3, . . . between the exchange 3c-1 onthe originating side and the ATM exchange 3c-n to which the terminatingterminal 1b is connected are finally determined. When the ATM exchange3c-n on the terminating side receives the connection informationincluding the originating number, the terminating number and the VCI ofthe higher-order ATM exchange 3c-3, the ATM exchange 3c-n allocates apredetermined VCI to the terminating terminal 1b and judges whether ornot the terminating terminal 1b is communicable. If the answer is YES,the signal network 3b informs the exchange 3c-1 on the originating sidethat the terminating terminal 1b is communicable, and the exchange 3c-1on the originating side allocates a predetermined VCI to the originatingterminal 1a.

Each of the ATM exchanges 3c-1 to 3c-n on each path registers thefollowing into an internal routing table in a form correlated with theVCI of the higher-order ATM exchange:

(1) a tag which includes the routing information for specifying outgoinghighway (output link) of the cell having the particular VCI and theinformation for maintaining the quality, and

(2) new VCI and VPI which are to be added to the output cell in place ofthe old VCI and VPI.

In this manner, when the paths are formed between the originatingterminal 1a and the terminating terminal 1b, these terminals 1a, 1btransmit and receive the call cells and the response cells and confirmthe communication procedure in mutual fashion. Thereafter, theoriginating terminal 1a separates the data to be transmitted intopredetermined byte lengths, generates a cell with a header including theallocated VCI attached thereto, and supplies the cell to the ATM network3. When the cell is input from the higher-order exchange through apredetermined incoming highway, each of the ATM exchanges 3c-1 to 3c-nreplaces the VPI/VCI of the input cell by reference to its routing tableand sends the cell out on a predetermined outgoing highway on the basisof the tag (routing information). As a result, the cell output from theoriginating terminal 1a reaches the exchange 3c-n on the terminatingside via the paths determined by the call control. The exchange 3c-n onthe terminating side replaces the VCI which is attached to the inputcell with the VCI allocated to the terminating terminal 1b by referenceto its routing table and supplies the cell to the line to which theterminating terminal 1b is connected.

Thereafter, the originating terminal 1a serially transmits the cells tothe terminating terminal 1b, and the terminating terminal 1b assemblesthe information portion DT contained in the received cells and restoresthe original data.

In the above explanation, only one call is processed, but by providingdifferent VCI values for both ends of the respective lines between aterminal and an ATM exchange and between mutually adjacent ATMexchanges, it is possible to establish logical links on one line incorrespondence with a multiplicity of calls, thereby realizinghigh-speed multiplex communication. According to the ATM, it is possibleto multiplex information from information sources having differenttransmission speeds such as moving pictures, data and audio, so that asingle transmission line can be effectively used. In addition, datatransmission at a very high speed on the order of 150 Mbps to 600 Mbpsis enabled without the need for retransmission control or a complicatedcommunication procedure which is conventionally implemented by softwarethrough packet switching.

An ATM exchange has a buffering function, which enables the ATM exchangeto accept a call without keeping the originating terminal waiting and tosend it to the terminating terminal even if there are a multiplicity ofcalls to the ATM exchange or the terminating terminal. For example, whenthere are a multiplicity of simultaneous calls to the terminatingterminal 1b and therefore there is no vacant line between the exchange3c-n on the terminating side and the terminating terminal 1b, thereremains a cell which cannot be sent to the terminating terminal 1b. Inthis case, the exchange 3c-n on the terminating side buffers theremaining cell and sends it to the terminating terminal 1b when a linebecomes vacant. In this manner, it is possible to accept a call to theterminating terminal without keeping the originating terminal waiting.

(b) Self-Routing ATM Exchange

FIG. 21 shows the structure of a self-routing ATM exchange. Theself-routing ATM exchange is provided with a basic switching unit SWU, acontrol information add-on unit CIAU, and a CPU (call controller) forprocessing a calling. Although one self-routing switch module SRM 1exists between the input lines and the output lines in this ATMexchange, a plurality of self-routing switch modules may be connectedbetween them.

The input ends of the module SRM 1 are connected to the input lines(input links) #1 to #3 via the control information add-on unit CIAU, andthe output ends are connected to the output lines (output links) #1 to#3. The control information add-on unit CIAU is provided with add-oncircuits AC1 to AC3 for adding routing information or the like incorrespondence with the respective input lines #1 to #3. Each of theadd-on circuits AC1 to AC3 adds a tag (routing header) to the cell whichis input from the corresponding input line, replaces the VCI containedin the cell information and supplies the cell to the basic switchingunit SWU.

The call controller CPU controls a call so as to determine the VCI andthe VPI of a cell at the time of calling, determines the tag (routingheader RH) in accordance with the location of the terminating terminaland writes the control information (VPI, VCI, RH) in a routing table(not shown) of the add-on circuit to which the cell is input. When thecell is input to a predetermined input line via the higher-order ATMexchange after the end of the call control, one of the add-on circuitAC1 to AC3 which is connected to the input line reads, from the routingtable, the control information (tag and VCI) which corresponds to theVCI attached to the input cell. The add-on circuit adds the tag (routingheader RH) to the cell, replaces the VCI of the cell with the read VCI,and supplies the cell to the basic switching unit SWU. The self-routingswitch module SRM 1 of the basic switching unit SWU transmits the cellsfrom a predetermined output line in accordance with the tag (routingheader RH).

FIG. 22 is a circuit diagram of an example of the self-routing switchmodule (SRM 1). The symbols I₁ to I₃ represent control informationdetectors, D₁ to D₃ transmission information delay circuits, DM₁ to DM₃demultiplexers, and DEC₁ to DEC₃ control information decoders. All theseelements constitute a cell distributor CELD. The symbols FM₁₁ to FM₃₃represent buffer memories such as FIFO (First-In First-Out) memories,SE_(L1) to SEL₃ selectors, and AOM₁ to AOM₃ arrival-order managementFIFOs. The arrival-order management FIFOs (AOM₁ to AOM₃), which areconnected to the output ends of the control information decoders DEC₁ toDEC₃, respectively, store the order of arrival of the cells into thecorresponding three buffer memories FM₁₁ to FM₁₃, FM₂₁ to FM₂₃ and FM₃₁to FM₃₃, respectively, control the selectors SEL₁ to SEL₃, respectively,so as to read the cells from the buffer memories in the order ofarrival, and supply the cells to the output lines #1 to #3,respectively.

The detector I_(i) (i=1 to 3) extracts the control information containedin the cell and supplies the information to the decoder DEC_(i) (i=1 to3).

If the input tag (routing header RH) represents the output terminal #j(j=1 to 3), the decoder DEC_(i) operates the demultiplexer DM_(i) by aswitch signal S_(i) and transmits the transmission information to theFIFO memory FM_(ji). For example, if the routing header RH contained inthe information input from the input terminal #1 represents the outputterminal #2, the decoder DEC₁ operates the demultiplexer DM₁ and inputsthe information supplied from the input terminal #1 to the FIFO memoryFM₂₁. The arrival-order management FIFO (AOM_(i)) is connected to theoutput terminal of the corresponding control information decoder DEC₁ toDEC₃ and stores the order of arrival of the cells to the correspondingthree buffer memories FM_(i1) to FM_(i3). For example, if the cellsarrive to the buffer memories in the order of FM₁₁, FM₁₂, FM₁₃, FM₁₂, .. . , buffer memory identification codes 1, 2, 3, 2, . . . are stored inthe arrival-order management FIFO (AOM_(i)) in the order of arrival ofthe cells. Thereafter, the arrival--order management FIFO (AOM_(i))controls the corresponding selector SEL_(i) to read the cells from thethree buffer memories FM_(i1) to FM_(i3) in the order of arrival of thecells and supplies the cells to the output line #i.

In this manner, since the FIFO memory FM_(ij) has a capacity for aplurality of cells, it has a buffering function which is capable ofadequately dealing with the problem such as a temporary increase oftransmission data. In addition, since cells are read from the buffermemories FM_(i1) to FM_(i3) in the order of arrival of the cells, anequal number of cells remain in each of the buffer memories FM_(i1) toFM_(i3), and it never happens that cells overflow a buffer memory andare therefore discarded.

The ATM transmission system, however, has the following problem. Sincevarious traffics having different information speeds and different burstproperties (burst means an abrupt increase in the quantity ofinformation) are synthetically handled in the ATM transmission system,in a case where there is a traffic having an especially strong burstproperty, it is impossible without an appropriate call reception controlto transmit the ATM cells so as to satisfy a QOS (cell loss ratio, delaytime) which is required by the user. For this reason, when abandwidth-guaranteed connection call generates, an ATM exchange judgeswhether or not there is a vacant bandwidth which the call requires in apredetermined transmission line on the basis of the physical bandwidthof the transmission line and the average and peak cell rates of the calldeclared by the user (ATM terminal), and if the answer is in theaffirmative, the ATM exchange accepts the call, while rejecting the callif the answer is in the negative.

There are two methods for determining whether the ATM exchange acceptsor rejects a call having a variable-speed traffic property in which theaverage cell rate is different from the peak cell rate. In the firstmethod, the ATM exchange determines whether or not the call is acceptedby regarding the peak cell rate of the call as a necessary bandwidth.The first method is simple, but it reduces the number of calls which canbe allocated to a transmission line, thereby lowering the utilization ofa transmission line. In the second method, the ATM exchange determineswhether or not the call is accepted by regarding the average cell rateof the call as a necessary bandwidth. According to the second method,many calls can be allocated to a transmission line, thereby enhancingthe utilization of a transmission line. However, when the peak of thetransmission rate for each call overlaps each other, cells beyond thephysical bandwidth of the transmission line are lost. As a result, it isimpossible to meet the required cell loss ratio, which causes soundskipping, picture missing and data loss on the terminating side. Inorder to solve these problems, cells are allocated both on the basis ofaverage cell rate and on the basis of the peak cell rate in the callreception control adopted at present, thereby enhancing the utilizationof a transmission line while maintaining a predetermined cell lossratio.

FIG. 23 is an explanatory view of the call reception control in an ATMexchange. In FIG. 23, (1) the reference symbol Vt represents thephysical bandwidth of a transmission line, (2) Vpht the sum of the peakcell rates of all the calls allocated on the basis of the peak cellrate, (3) Vavt the sum of the average cell rates of all the callsallocated on the basis of the average cell rate, and (4) Vpts the sum ofthe peak cell rates of all the cells that are in the process ofcommunication. Further, (5) the reference symbol Vp represents the peakcell rate of a new call (which is requesting admission), and (6) Vav theaverage cell rate of the call which is requesting admission.

When the number of calls allocated to the transmission line increases,the peaks and the bottoms of the transmission rates overlap each otherand they are levelled due to a statistical multiplexing efficiency, sothat it is possible to accommodate a larger number calls than anapparent number of calls. In call reception control referred to asconnection admission control (CAC), cells are allocated on the basis ofboth the average cell rate and the peak cell rate by utilizing such astatistical multiplexing efficiency.

(c) Statistical Multiplex System

In an ATM exchange, the ATM cells which arrive from a plurality of (N)input links are concentrated and multiplexed before being transmittedfrom a predetermined output link, as shown in FIG. 24. As such aconcentration multiplex system, there are 1 a cross-point buffer systemby skip polling control, 2 a cross-point buffer system by FIFO readcontrol, 3 a cross-point buffer system by LNQ priority read control, and4 an output buffer system.

In the cross-point buffer system by the skip polling control, thebuffers (buffers FM₁₁ to FM₃₃ shown in FIG. 22) are serially scanned andATM cells are transmitted, while a vacant buffer is skipped. In thecross-point buffer system by the FIFO read control, the order of arrivalof the ATM cells from all input links is collectively managed and theATM cells are serially transmitted in the order of arrival, as explainedin FIG. 22. In the cross-point buffer system by the LNQ priority readcontrol, an ATM cell is read preferentially from the buffer in which thelargest number of cells are stored. The LNQ is an abbreviation ofLargest Number of Cells in the Queue. These cross-point buffer systemsare premised on that scanning of all the buffers or comparison of thenumber of cells stored in the buffers can be executed within one cellreading time.

In the output buffer system, cells are multiplexed so that the speed istemporarily raised to N·V in the ATM exchange, thereafter the speed N·Vis converted to the speed V (N·V→V) by a single FIFO. FIG. 25 explainssuch an output buffer system. The symbol MPX represents a multiplexer,and DBF₁ to DBF_(N) FIFO memories as output buffers. The multiplexer MPXmultiplexes the cells for output lines #1 to #N having a speed of V, andstores the multiplexed cells in the output buffers DBF₁ to DBF_(N)provided in correspondence with the respective output lines #1 to #N ata speed of NV. Then, the cells are read from the respective buffers atthe speed of V and output to the corresponding output lines #1 to #N.

These concentration multiplex systems 1˜4 will be compared with eachother in the following.

(1) In regard to the buffer lengths required in the case of randomtraffic input, the systems 4, 3, 2, 1 require a shorter buffer length inthat order.

(2) With the fact that the output buffer system 4 requires a high-speedmemory having a speed of N times of V taken into consideration, thememory costs in each system is represented by the following formula,##EQU1## Therefore, in regard to the memory costs, the systems 3, 2, 4,1 require a lower cost in that order.

(3) In the case of burst input, there is a knee point at which the cellloss ratio is not reduced however longer the buffer length may be. Dueto this influence, there is not much difference as to the cell lossratio if the buffer length is long. FIG. 26 shows the relationshipbetween the logarithm of the cell loss ratio represented by log cellloss ratio! and the buffer length, wherein the symbol n represents thenumber of multiplexed calls, and Vout the speed of a transmission line.As is clear from FIG. 26, the larger the number n of multiplexed callsbecomes, the knee point moves downward, so that the cell loss ratio isreduced. This is because the larger the number n of multiplexed callsbecomes, the more peaks and bottoms of the transmission speeds for themultiplexed calls overlap with each other due to a statisticalmultiplexing efficiency thereby the transmission speed of each call isleveled.

(4) In order to lower the knee point in the case of burst input, it isnecessary to increase the transmission speed at the output link incomparison to the peak cell fate, which leads to an increase in themultiplex degree.

In the future, the peak cell rate of the calling source itself willincrease. This means that in order to lower the knee point, it isnecessary to enhance the speed of the resource of a network formultiplexing the calls. Therefore, the output buffer system 4 which isprimarily required to memorize the cells at high speed and therefore hasno margin in the speed should not be adopted.

Although the cross-point buffer system by the LNQ priority read control4 is superior to any other cross-point buffer system in the point of thecell loss ratio, it should not be adopted either because it has thefollowing defects;

the embodiment of the mechanism itself is difficult, and

since a buffer in which the smallest number of cells are stored has apossibility of continuously losing the priority and the delay time ofthe cell may be increased, control using a threshold is essential.

Consequently, the cross-point buffer system by FIFO read control is themost realistic as a system for transmitting the ATM cells queued inbuffers to an output link.

When such statistical multiplex is executed, the utilization of anoutput link is enhanced. However, there is a possibility of oneconnection continuously occupying the bandwidth of the output link, andit is impossible to desirably allocate a bandwidth for each connectionor each input link.

(d) Traffic Shaping System

In contrast to the statistical multiplex system, there is a trafficshaping system as a method of desirably allocating a bandwidth for eachconnection or each input link. FIG. 27 shows the structure of a trafficshaping system. In the traffic shaping system, the physical bandwidth V(e.g., V=150 Mb/s) of one output link is divided suitably and eachdivided bandwidth is allocated in advance to each input link, and theATM cells input from each input link is transmitted to the output linkso as to satisfy the allocated bandwidth. According to the trafficshaping system, by managing the bandwidth to be used in the output linkfor each input link, it is possible to prevent a phenomenon that such agreater part of the bandwidth of the output link is occupied by aspecific connection as to make it impossible to transmit the cells ofthe other connections. In FIG. 27, the symbol CELD represents a celldistributor (see CELD in FIG. 22), FM11 to FM1n FIFO buffers provided incorrespondence with input links, SEL a selector, and a SCD a schedulerfor reading an ATM cell from each buffer in accordance with a presetschedule and transmitting it to the output link #1. In the schedulingtable within the scheduler SCD, for example, one period is divided into128 cell slots (time slots) and each of the cell slots S₁ to S₁₂₈ isallocated to a buffer (input link) from which cells are read andsupplied to the output link. Accordingly, at every one of the 128 cellslots of one period, the scheduler reads a cell from a predeterminedbuffer and supplies it to the output link. This operation is conductedcyclically. By this operation, a bandwidth V1, V2, . . . Vn (V1+V2+. . .Vn≦V) is allocated to each input link. When the number of cells suppliedfrom a buffer in one period is a plural, it is preferable to make theinterval between cells as uniform as possible.

As described above, according to a traffic shaping system, the bandwidthallocated to each input link becomes desirable. However, in contrast toa statistical multiplex system, even if there is a buffer in which morecells arrive and an output link is vacant, it is inconvenientlyimpossible to read a cell from the buffer and supply it to the outputlink until the time for accessing the buffer comes. In other words, theutilization of an output link is not very high in a traffic shapingsystem.

(e) Congestion

In an ATM network, cell loss, that is, a loss of transmissioninformation is caused by simultaneous arrival of cells to a buffer(short time congestion). In the case of relaying between high-speed datacommunication networks such as frame relay networks by an ATM network, aframe, which is an information transmission unit of a high-speed datacommunication network, sometimes becomes incomplete (an error frame isgenerated) due to the cell loss in the ATM network. The error frame iscomplemented by retransmission control in dependence upon thehigher-order protocols of the terminal. At this time, there is a fear ofan increase in the load on the ATM network, which furthers anddeteriorates the congestion in the ATM network, resulting in a long-termcongestion, depending upon the connection form between the high-speeddata communication network and the ATM network or the retransmissioncontrol of the higher-order protocols.

FIG. 28 is an explanatory view of a short-time congestion and along-term congestion. The abscissa represents time and the ordinate thelength (queue length) of the cells stored in a queue in a buffer. Thesymbol CTH represents a congestion threshold for detecting a congestion.A short-term congestion SCJ is caused when the buffer queue length ismomentarily increased, and it is autonomously relieved. On the otherhand, in a long-term congestion LCJ, the buffer queue length is held atits maximum. When the congestion threshold CTH is equal to the buffersize, all the cells above the dot line are lost.

FIGS. 29 and 30 are explanatory views of retransmission control, whereinFIG. 29 shows retransmission control when there is no frame loss, andFIG. 30 shows retransmission control when there is frame loss. In thesedrawings, the retransmission process of data communication isexemplified by a Go-Back-N process (HLDC process), which is the mostgeneral as a data communication retransmission process. In the Go-Back-Nprocess, after a sequence number is attached to each frame, flow controlof each frame or retransmission control is executed. Each frame isprovided with a field for recording the sequence number of a receivedframe so as to acknowledge the arrival of the frame (acknowledge normalcommunication). More specifically, the terminating side records thesequence number of the latest one of the consecutively normally receivedframes in a frame which is transmitted in the reverse direction (fromthe terminating side to the originating side) and acknowledges thearrival of the frames between the terminating side and the originatingside (see ACK (2) and ACK (4) in FIG. 29). A frame loss is detected fromthe discontinuity of sequence numbers of the received frames (see FIG.30). Similarly, it is general that the sequence number of a lost frameis notified to the originating side by a frame transmitted in thereverse direction (see REJ (2), the numeral 2 is a sequence number ofthe lost frame).

In the Go-Back-N process, the originating which has received the reportREJ (2) of the sequence number of the lost frame retransmits all theframes subsequent to the lost frame which is indicated by the suppliedlost frame sequence number (=2), as shown in FIG. 30. This is becausethe terminating side regards all the transmitted frames subsequent tothe lost frame as invalid, and discards them. Consequently, even ifthere is only one frame loss, the number of retransmitted frames is aplural, so that when a plurality of lines execute a retransmissionprocess, the congestion is deteriorated due to an increase in the load,which may result in a long-term congestion.

(f) Problems in Statistical Multiplex System and Traffic Shaping Systemand Objects of the Invention

According to a statistical multiplex system, the utilization of anoutput link is enhanced. However, there is a possibility of oneconnection continuously occupying the bandwidth of the output link, andit is impossible to desirably allocate a bandwidth for each connectionor each input link. In contrast, in a traffic shaping system, althoughit is possible to desirably allocate a bandwidth for each input link,the utilization of an output link is not very high. In this way, bothstatistical multiplex system and a traffic shaping system haverespective merits and defects. An ATM exchange having the merits of bothsystem by utilizing both systems is therefore demanded.

There are two types of call; one is a bandwidth-guaranteed connectioncall which requires a bandwidth to be guaranteed, and the other is anon-bandwidth-guaranteed connection call which does not require abandwidth to be guaranteed and a cell of which may be transmitted onlywhen no information of a bandwidth-guaranteed connection call istransmitted. When there are these two types of call together, it isdesirable to decisively allocate the required bandwidth to thebandwidth-guaranteed connection call and to allow thenon-bandwidth-guaranteed connection call to effectively use theremaining bandwidth.

Accordingly, it is a first object of the present invention to provide anATM exchange which utilizes both a statistical multiplex system and atraffic shaping system to have the respective merits.

It is a second object of the present invention to provide an ATMexchange for transmitting the cell of a bandwidth-guaranteed connectioncall to an output link in accordance with a traffic shaping system andfor transmitting the cell of a non-bandwidth-guaranteed connection callto the output link in accordance with a statistical multiplex system,for example, a cross-point buffer system by FIFO read control when thereare simultaneously both the bandwidth-guaranteed connection call and thenon-bandwidth-guaranteed connection call.

It is a third object of the present invention to provide an ATM exchangewhich is capable of decisively allocating a bandwidth to eachbandwidth-guaranteed connection call.

It is a fourth object of the present invention to provide an ATMexchange which is capable of regulating the bandwidth to be allocated toa non-bandwidth-guaranteed connection call.

It is a fifth object of the present invention to provide an ATM exchangewhich is capable of decisively allocating a bandwidth to abandwidth-guaranteed connection call, wherein the bandwidth is necessaryfor satisfying the quality specified by a quality class to which thebandwidth-guaranteed connection call belongs.

It is a sixth object of the present invention to provide an ATM exchangewhich is capable of acquiring a necessary bandwidth for abandwidth-guaranteed connection call even if ATM cells of anon-bandwidth-guaranteed connection call frequently reach.

It is a seventh object of the present invention to provide an ATMexchange which is capable of acquiring a bandwidth so as to securelymaintain the qualities of all the quality classes even if many ATM cellsof a specific quality class reach, by inhibiting a bandwidth beyond thebandwidth in conformity with cell loss ratio which is specified for eachquality class from being allocated to each quality class.

(g) Problems of Long-Term Congestion and Objects of the Invention

Although a short-term congestion is autonomously relieved, the bufferqueue length is held at its maximum and cell loss is caused for a longterm in a long-term congestion. It is therefore necessary to exertcongestion control so as to avoid a long-term congestion when thelong-term congestion is detected and to release the congestion avoidingcontrol when a normal state is restored.

As a method of detecting a congestion, there is a system of detecting acongestion by using the number of lost cells or a cell loss ratio. Thissystem is advantageous in that it does not depend upon the form of theinformation which flows into a buffer, but it is defective in that sinceit requires a special hardware for observing the cells lost for a shortperiod, it increases a hardware in an ATM exchange and therefore makesthe ATM exchange complicated.

As a system which is realized by a simple hardware, there is a system ofsetting a threshold of the buffer queue length and detecting and judginga congestion merely by taking whether the buffer queue length becomeslager than the threshold of the buffer queue length into consideration.In this simple system, however, there is a difficult problem. That is,it is necessary to take the form of information which flows into thebuffer into consideration when the threshold is determined. Morespecifically, if the information which flows into the buffer has astrong burst property, although the average queue length is small, thefluctuation (dispersion) in the vicinity of the average value is large,so that there is a case where the queue length momentarily exceeds thethreshold, which inconveniently leads to excessive and frequent thecongestion avoiding control.

It is therefore conventionally impossible to securely detect a long-termcongestion discriminated from a short-term congestion by a simplestructure.

Accordingly, it is an eighth object of the present invention to providean ATM exchange which is capable of securely detecting a long-termcongestion discriminated from a short-term congestion by a simplestructure and starting congestion avoiding control.

It is a ninth object of the present invention to provide an ATM exchangewhich is capable of securely detecting that the ATM exchange network hasrestored a normal state from a long-term congestion so as to quicklyrelease congestion avoiding control.

It is a tenth object of the present invention to provide an ATM exchangewhich is capable of obviating the difficulty in determining a thresholdwith the form of information flowing into a buffer taken intoconsideration.

It is an eleventh object of the present invention to provide an ATMexchange which is capable of avoiding an oscillation phenomenon that theoperation of starting and ending congestion avoiding control isfrequently repeated.

DISCLOSURE OF THE INVENTION

To achieve these objects, the present invention provides an ATM exchangefor transmitting ATM cells which arrive from an input link to apredetermined output link and for controlling the transmission of theATM cells in the following manner in a case where there aresimultaneously both a bandwidth-guaranteed connection call whichrequires a bandwidth to be guaranteed, and a non-bandwidth-guaranteedconnection call which does not require a bandwidth to be guaranteed anda cell of which may be transmitted only when no information of thebandwidth-guaranteed connection call is transmitted. With respect to thebandwidth-guaranteed connection call, a scheduler allocates thepredetermined number of time slots which correspond to the requiredbandwidth to the bandwidth-guaranteed connection call from among the Ntime slots which constitute one period, and transmits an ATM cell of thebandwidth-guaranteed connection call at each allocated time slot. Anon-bandwidth-guaranteed cell transmitting means transmits ATM cells ofthe non-bandwidth-guaranteed connection call at time slots which are notallocated to any bandwidth-guaranteed connection call. In this manner,an ATM exchange can exchange the ATM cells by utilizing both astatistical multiplex system and a traffic shaping system so as to havethe respective merits. In other words, by decisively allocating anecessary bandwidth to a bandwidth-guaranteed connection call which isrequired to have a predetermined QOS, it is possible to transmit ATMcells having such a quality to an output link. On the other hand, it ispossible to transmit ATM cells of a non-bandwidth-guaranteed connectioncall to the output link in such a manner as to enhance the utilizationof the output link.

The ATM exchange is provided with a queuing buffer for storing cells ina queue which arrive in the ATM exchange in correspondence with outputlinks and serially transmitting the queued cells to the correspondingoutput links, and a congestion/normal state monitoring means fordetecting the occurrence of a long-term congestion which is differentfrom a short-term congestion due to simultaneous arrival of cells in anormal state, and judging whether or not the normal state is restoredfrom the congestion under congestion avoiding control. Thecongestion/normal state monitoring means presets in advance a bufferqueue length which is regarded as the occurrence of a long-termcongestion and compares the actual queue length with the preset queuelength so as to detect the occurrence of a long-term congestion. In thismanner, it is possible to detect a long-term congestion distinguishedfrom a short-term congestion and quickly restore a normal state byexerting congestion avoiding control. In addition, it is possible toavoid an oscillation phenomenon that the operations of starting andending congestion avoiding control are frequently repeated by inhibitingcontrol for ending congestion avoiding control for a predetermined timeafter the start of the congestion avoiding control.

BRIEF DESCRIPTION OF THE DRAWINGS

FIGS. 1(a) and (b) are schematic explanatory views of the presentinvention;

FIG. 2 shows the structure of a first embodiment for realizing QOScontrol according to the present invention;

FIG. 3 is an explanatory view of a tag;

FIGS. 4(a) and (b) explains the writing and reading operations in anarrival-order management FIFO;

FIG. 5 is an explanatory view of a scheduling table;

FIG. 6 is an explanatory view of another scheduling table;

FIG. 7 shows the entire structure of a second embodiment for realizingQOS control according to the present invention;

FIG. 8 shows the structure of a QOS control portion;

FIG. 9 shows the structure of another QOS control portion;

FIG. 10 shows the structure of a quality guaranteeing portion;

FIG. 11 shows the structure of a first embodiment of congestion controlaccording to the present invention;

FIG. 12 is an explanatory view of a congestion notifying bit;

FIG. 13 is a flow chart of a congestion control process;

FIG. 14 shows the structure of a second embodiment of congestion controlaccording to the present invention;

FIG. 15 shows the structure of a network to which the present inventionis applicable;

FIG. 16 shows the structure of a frame used in the frame relay network;

FIG. 17 explains a congestion notifying process;

FIG. 18 explains a normal state restoration notifying process;

FIG. 19 shows the structure of an ATM cell;

FIG. 20 schematically explains the structure of an ATM network;

FIG. 21 shows the structure of a self-routing ATM exchange;

FIG. 22 is a circuit diagram of an example of a self-routing switchmodule;

FIG. 23 is an explanatory view of the call reception control;

FIG. 24 explains various statistical multiplex systems in comparisonwith each other;

FIG. 25 explains a system in which cells are concentrated andmultiplexed before switching;

FIG. 26 shows the relationship between log cell loss ratio! and bufferlength;

FIG. 27 is an explanatory view of the structure of a traffic shapingsystem;

FIG. 28 is an explanatory view of a short-time congestion and along-term congestion;

FIG. 29 is an explanatory view of retransmission control (at the normaltime); and

FIG. 30 is an explanatory view of retransmission control (when cell lossis caused).

BEST MODE FOR CARRYING OUT THE INVENTION (A) Summary of the Invention

FIGS. 1 (a) and (b) are a schematic explanatory view of the presentinvention.

In FIG. 1(a), the reference numerals 11₁ to 11_(n) represent buffers forstoring ATM cells which are supplied from input links #1 to #n and areto be transmitted to an output link #j, 21 a scheduler for reading anATM cell of a bandwidth-guaranteed connection call from the buffer ofeach input link in accordance with a predetermined scheduling andoutputting it to the output link, and 31 a non-bandwidth-guaranteed celltransmitting means for transmitting an ATM cell of anon-bandwidth-guaranteed connection call at a time which is notallocated to any bandwidth-guaranteed connection call.

In FIG. 1(b), the reference numeral 111 represents a buffer for storingin a queue ATM cells which are supplied from the input link # and whichare to be transmitted to the output link #j, 121 a congestion/normalstate monitoring means for detecting the occurrence of a long-termcongestion and judging whether or not the normal state is restored fromthe congestion, and 131 a congestion avoiding control means for exertingcongestion avoiding control when a long-term congestion occurs andending it when a normal state is restored.

(a) QOS Control (FIG. 1(a))

The scheduler 21 allocates the predetermined number of time slots whichcorrespond to the required bandwidth to the bandwidth-guaranteedconnection call from among the M time slots which constitute one period.The scheduler 21 schedules so that an ATM cell is read from thecorresponding buffer at an allocated time slot and that it istransmitted to the output link. The non-bandwidth-guaranteed celltransmitting means 31 reads an ATM cell of the non-bandwidth-guaranteedconnection call from the corresponding buffer and transmits it to theoutput link at a time slot which is not allocated to anybandwidth-guaranteed connection call. In this manner, an ATM exchangecan utilize both a statistical multiplex system and a traffic shapingsystem to have the respective merits. In other words, by decisivelyallocating a necessary bandwidth to a bandwidth-guaranteed connectioncall which is required to have a predetermined QOS, it is possible totransmit ATM cells having such a quality to an output link. On the otherhand, it is possible to transmit ATM cells of a non-bandwidth-guaranteedconnection call to the output link in such a manner as to enhance theutilization of the output link.

The scheduler 21 allocates the number of time slots which correspond tothe required bandwidth for each bandwidth-guaranteed connection call andenters the number of an input link which accommodates the call in theallocated time slot. The scheduler 21 schedules so that cells are readfrom the buffer corresponding to the input link at the allocated timeslots and that they are transmitted to the output link. In this way, itis possible to decisively allocate a necessary bandwidth for eachconnection or each input link and to transmit ATM cells, therebymaintaining a predetermined QOS.

Furthermore, the ATM exchange is also provided with a shared buffer forstoring ATM cells which arrive from one input link at a multiplex speedof N·V, and address management buffers corresponding to respectivequality class numbers for specifying the quality conditions. Theaddresses in the shared buffer at which ATM cells are stored are queuedin the address management buffers which correspond to the quality classnumbers of the ATM cells. With respect to a bandwidth-guaranteedconnection call, the scheduler allocates the number of time slots whichcorrespond to the required bandwidth which is necessary for satisfyingthe quality class of the call and enters the quality class number in thecorresponding allocated slots. In this state, the scheduler schedules sothat the address is read from the address management buffer designatedby the quality class number at each time slot and that an ATM cell isread from the shared buffer on the basis of the read address andtransmitted to the output link. In this way, it is possible todecisively allocate the necessary bandwidth for each quality class andtransmit ATM cells, thereby maintaining a predetermined QOS.

The scheduler 21 also divides the time slots which are not allocated toany bandwidth-guaranteed connection call into 1 time slots at which ATMcells of a non-bandwidth-guaranteed connection call can be transmittedand 2 time slots at which ATM cells cannot be transmitted. Thenon-bandwidth-guaranteed cell transmitting means 31 transmits ATM cellsof a non-bandwidth-guaranteed connection call only at the time slots atwhich ATM cells can be transmitted. In this case, thenon-bandwidth-guaranteed cell transmitting means 31 transmits ATM cellsof a non-bandwidth-guaranteed connection call in the order of arrival.In this way, it is possible to regulate the allocation of a bandwidth toa non-bandwidth-guaranteed connection call so as not to exceed apredetermined bandwidth, thereby enhancing the utilization of the outputlink. In addition, it is possible to transmit cells of anon-bandwidth-guaranteed connection call efficiently in accordance witha cross-point buffer system by FIFO read control type.

In the case of accepting a new bandwidth-guaranteed connection call, thequeue length Qi in a shared buffer which should be maintained in orderto satisfy the quality conditions of all calls having the same qualityclass number #i as that of the new call is obtained, and a threshold isset at the value computed by subtracting the queue length Qi (i=1, 2, .. . ) of all the quality classes from a shared buffer length B. When thenumber of cells of a non-bandwidth-guaranteed connection call stored inthe shared buffer becomes equal to the threshold, it is thereafterinhibited to write ATM cells of a non-bandwidth-guaranteed connectioncall into the shared buffer. In this manner, it is possible to acquirenecessary bandwidth for the bandwidth-guaranteed connection calls evenif ATM cells of a non-bandwidth-guaranteed connection call frequentlyreach.

The queue length Qi in a shared buffer which should be maintained inorder to satisfy the quality conditions of a quality class #i isobtained for each quality class, and the number of ATM cells of thebandwidth-guaranteed connection calls having a predetermined qualityclass number #i which remain in the shared buffer is monitored for eachquality class number. When the number of remaining cells is equal to thequeue length Qi, the ATM cell of a bandwidth-guaranteed connection callhaving the quality class number #i which reaches next is discarded. Inthis manner, it is possible to acquire the bandwidth so as to securelymaintain the qualities of all the quality classes even if many cellshaving a specific quality class number reach.

(b) Congestion Avoiding Control (FIG. 1(b))

The congestion/normal state monitoring means 121 detects the occurrenceof a long-term congestion which is different from a short-termcongestion caused by simultaneous arrival of cells in a normal state,and judges whether or not the normal state is restored from thecongestion under congestion avoiding control. The congestion avoidingcontrol means 131 exerts congestion avoiding control when a long-termcongestion occurs and ends it when a normal state is restored. In thiscase, the congestion/normal state monitoring means 121 compares thequeue length of the queuing buffer 111 for queuing the cells suppliedthereto with a preset value so as to detect the occurrence of along-term congestion and the restoration to a normal state.

In this manner, it is possible to detect a long-term congestiondistinguished from a short-term congestion and quickly restore a normalstate by exerting congestion avoiding control. In addition, it ispossible to avoid an oscillation phenomenon that the operations ofstarting and ending congestion avoiding control are frequently repeatedby inhibiting control for ending congestion avoiding control for apredetermined time after the start of the congestion avoiding control.

To state this more concretely, a threshold X_(ON) which represents theoccurrence of a long-term congestion and a threshold X_(OFF) (X_(ON)>X_(OFF)) which represents the restoration of a normal state are set inadvance. The congestion/normal state monitoring means 121 judges thefact that the observed value of the queue length at every predeterminedobservation time T₀₁ consecutively exceeds the threshold X_(ON) apredetermined number N₀₁ (N₀₁ ≧1) of times to be the occurrence of along-term congestion, while judging the fact that the observed value ofthe queue length at every predetermined observation time T₀₂ undercongestion avoiding control is consecutively below the threshold X_(OFF)a predetermined number N₀₂ (N₀₂ ≧1) of times to be the restoration to anormal state. Alternatively, the congestion/normal state monitoringmeans 121 judges the fact that the maximum queue length of the buffer inevery predetermined observation time T₀₁ consecutively exceeds thethreshold X_(ON) a predetermined number N₀₁ (N₀₁ ≧1) of times to be theoccurrence of a long-term congestion, while judging the fact that themaximum queue length in every predetermined observation time T₀₂ undercongestion avoiding control is consecutively below the threshold X_(OFF)a predetermined number N₀₂ (N₀₂ ≧1) of times to be the restoration to anormal state.

In this way, it is possible to obviate the difficulty in determining athreshold with the form of information flowing into a buffer taken intoconsideration, and to securely detect the occurrence of a long-termcongestion and the restoration to a normal state.

(B) QOS Control

(a) First Embodiment

(a-1) Structure

FIG. 2 shows the structure of a first embodiment of QOS control whenthere are both a bandwidth-guaranteed connection call and anon-bandwidth-guaranteed connection call together. Thebandwidth-guaranteed connection call is a call which requires abandwidth to be guaranteed, and the non-bandwidth-guaranteed connectioncall is a call which does not require a bandwidth to be guaranteed and acell of which may be transmitted only when no information of abandwidth-guaranteed connection call is transmitted.

In the first embodiment shown in FIG. 2, with respect to abandwidth-guaranteed connection call, ATM cells are transmitted to theoutput link for each connection or for each input link by a trafficshaping system. With respect to a non-bandwidth-guaranteed connectioncall, ATM cells are transmitted to the output link by a statisticalmultiplex system (cross-point buffer system by FIFO read control).

In FIG. 2, the reference numerals 5₁ to 5_(N) represent controlinformation add-on circuits (tag adding portions) for attaching tags tothe ATM cells in correspondence with the input links #1 to #N from whichthe ATM cells arrive, and replacing the VCI/VPI. The tag includes, forexample, routing information RH, information BTC indicating whether thecell belongs to a bandwidth-guaranteed connection call or anon-bandwidth-guaranteed connection call, and a number QCL specifyingthe quality class (cell loss ratio, delay time, etc.), as shown in FIG.3.

The reference numeral 10 represents an ATM switch provided incorrespondence with each of the output links #1 to #N. Although only oneATM switch for the output link #1 is shown in FIG. 2, the other ATMswitches have the same structure. The reference numeral 11 denotes aFIFO buffer portion provided in correspondence with each of the inputlinks #1 to #N so as to store in a queue ATM cells which are to beoutput to the output link #1, 21 a scheduler for transmitting ATM cellsof a bandwidth-guaranteed connection call by a traffic shaping system,31 a non-bandwidth-guaranteed cell transmitting portion for transmittingATM cells of a non-bandwidth-guaranteed connection call by a statisticalmultiplex system (cross-point buffer system by FIFO read control), and41 a filter portion for selecting cells which are to be transmitted tothe output link #1 from the ATM cells which arrive from each of theinput links #1 to #N on the basis of the routing information RH, andinputting the selected cells to the FIFO buffer portion 11 and thenon-bandwidth-guaranteed cell transmitting portion 31 at the subsequentstage. The filter portion 41 has filters 41₁ to 41_(N) in correspondencewith the input links #1 to #N, respectively.

In the FIFO buffer portion 11, the reference numerals 11₁ to 11_(N)represent FIFO buffers for storing, in the order of arrival, the ATMcells which arrive from each of the input links #1 to #N and which areselected so as to be transmitted to the output link #1. In each buffer,both bandwidth-guaranteed connection calls and non-bandwidth-guaranteedconnection calls are stored in the order of arrival irrespective of thekinds of the calls.

In the non-bandwidth-guaranteed cell transmitting portion 31, thereference numeral 31a represents a non-bandwidth-guaranteed cellselecting portion for extracting a non-bandwidth-guaranteed cell fromthe ATM cells which are output from each of the filters 41₁ to 41_(N)and outputting the number of the input link from which the cell arrives,and 31b an arrival-order management FIFO for storing, in the order ofarrival, the numbers of the input links from which the ATM cells of anon-bandwidth-guaranteed connection call arrive. In place of thenumbers, the arrival-order management FIFO 31b may store the data forspecifying the FIFO buffers for storing the ATM cells. The referencenumeral 31c denotes a cell transmission enabling portion for enabling acell of a non-bandwidth-guaranteed connection call to be transmittedwhen no cell of a bandwidth-guaranteed connection call is transmitted.The cell transmission enabling portion 31c detects a time slot which isdesignated to be "vacant" in a scheduling table which will be describedlater, and reads and output an input link number from the head of thearrival-order management FIFO 31b.

Actually, the arrival-order management FIFO 31b is provided with storageportions 31b-1 to 31b-N in correspondence with the input links #1 to #N,respectively, as shown in FIG. 4(a), in consideration of the case inwhich non-bandwidth-guaranteed cells are input from all the input links#1 to #N at the same time, and the order of reading is determined by theposition of a token, as shown in FIG. 4(b). That is, although the cellsare read in the order of arrival in principle, when cells arrive at thesame time, the order of reading is determined by the position of thetoken. In the example shown in FIG. 4(b), cells simultaneously arrivefrom the input links #1 and #3 as the third cells, but since theposition of the token goes around in the order of 1, 2, 3, 4, 1, . . . ,the cell of the input link number #1 is output prior to the cell of theinput link number #3. Similarly, the cells of the input link numbers#1˜#4 are output in the order indicated by the dot arrows.

In the scheduler 21, the reference numeral 21a represents a schedulingtable. The scheduler 21 allocates the predetermined number of time slotswhich correspond to a required bandwidth to each bandwidth-guaranteedconnection call from among M time slots which constitute one period. Thescheduler 21 writes the number of each input link which accommodateseach call in the allocated time slots of the scheduling table 21a and"vacant" is written in a time slot which is not allocated to anybandwidth-guaranteed connection call. In this case, the time slotshaving the same input link numbers are not concentrated at one point ofone period but evenly dispersed.

FIG. 5 explains the contents of the scheduling table 21a. In each of Mtime slots T₁ to T_(M) which constitute one period, an input link numberor "vacant" is written. The reference numeral 21b in FIG. 2 denotes aselector for selecting and outputting an input link number when it isread out of the scheduling table 21a, while selecting and outputting theinput link number that is read from the arrival-order management FIFO31b when "vacant" is read out of the scheduling table 21a. The referencenumeral 21c represents a selector for reading an ATM cell from one ofthe FIFO buffers 11₁ to 11_(N) which is designated by the input linknumber output from the selector 21 and outputting the ATM cell to theoutput link #1.

In the example shown in FIG. 5, at the time slots T₁, T₆, . . . ATMcells are read out of the FIFO buffer 11₁ of the input link #1 andtransmitted to the output link #1, at the time slots T₂, T₇, . . . ATMcells are read out of the FIFO buffer 11₂ of the input link #2 andtransmitted to the output link #1, and at the time slots T₃, . . . ATMcells are read out of the FIFO buffer 11₃ of the input link #3 andtransmitted to the output link #1. Similarly, ATM cells are read out ofeach buffer and transmitted to the output link #1. At the time slots T₄,T₈, . . . in which "vacant" is written, ATM cells are read out of apredetermined FIFO buffer which is designated by thenon-bandwidth-guaranteed cell transmitting portion 31 and transmitted tothe output link.

(b-1) Operation as a Whole

When a bandwidth-guaranteed connection call generates and requestsadmission, a call processor (not shown) judges whether or not there is avacant band which satisfies the required bandwidth of the call by aconnection admission control, and if the answer is in the affirmative,the call processor accepts the bandwidth-guaranteed connection call. Thecall processor then allocates the number of time slots which correspondto the required bandwidth (necessary bandwidth for guaranteeing thequality) to the bandwidth-guaranteed connection call from among the Mtime slots which constitute one period, and writes the number of theinput link for accommodating the call into the allocated time slots.Calls are accepted in this way, and the remaining time slots are handledas "vacant".

When the ATM cells arrive from the input links #1 to #N, the tag addingportions 5₁ to 5_(N) attach tags thereto, and thereafter the ATM cellsare input to ATM switches which correspond to the output links #1 to #N.Each of the filters 41₁ to 41_(N) selects the ATM cells which are to betransmitted to the output link #1 and serially inputs the selected ATMcells to the corresponding FIFO buffers 11₁ to 11_(N). The FIFO buffers11₁ to 11_(N) stores the received ATM cells in a queue. When the ATMcells output from the filters 41₁ to 41_(N) are non-bandwidth-guaranteedcells, the numbers of the input links from which the ATM cells aresupplied are stored in the arrival-order management FIFO 31b.

The scheduler 21 serially reads out the contents of the time slots inthe scheduling table 21a at a predetermined speed. When an input linknumber is read out, an ATM cell is read out of the FIFO buffer which isdesignated by the input link number and transmitted to the output link.In this manner, it is possible to transmit a cell so as to satisfy therequired bandwidth for each connection call or each link. On the otherhand, when "vacant" is read out, the non-bandwidth-guaranteed celltransmitting portion 31 outputs the first input link number from thearrival-order management FIFO 31b, and the selector 21c reads the ATMcell from the FIFO buffer designated by the input link number andtransmits it to the output link. In this manner, cells of anon-bandwidth-guaranteed connection call are output in the order ofarrival when no bandwidth-guaranteed cell is transmitted.

Actually, there is a case in which the ATM cell read out of the FIFObuffer which is designated by the input link number read out of thescheduling table 21a is not a bandwidth-guaranteed cell but anon-bandwidth-guaranteed cell. Reversely, there is a case in which theATM cell read out of the FIFO buffer which is designated by the inputlink number read out of the arrival-order management FIFO 31b is not anon-bandwidth-guaranteed cell but a bandwidth-guaranteed cell. However,on the whole, with respect to a bandwidth-guaranteed connection call, itis possible to transmit cells so as to satisfy the required bandwidthfor each connection call or each input link, and with respect to anon-bandwidth-guaranteed connection call, it is possible to transmitcells in the order of arrival.

(a-3) Modification

In the first embodiment, the bandwidth which corresponds to all vacanttime slots is allocated to a non-bandwidth-guaranteed connection call.However, there is a case in which regulation is desirable so that thebandwidth allocated to a non-bandwidth-guaranteed connection call doesnot exceed the required bandwidth. In such a case, the vacant time slotswhich are not allocated to any bandwidth-guaranteed connection call aredivided into 1 time slots SOK at which ATM cells of anon-bandwidth-guaranteed connection call can be transmitted, and 2 timeslots SNO at which ATM cells of a non-bandwidth-guaranteed connectioncall can not be transmitted, as shown in FIG. 6. The bandwidth which isallocated to a non-bandwidth-guaranteed connection call is regulated byadjusting the number of vacant time slots which allows transmission.When the scheduling table 21a has such a structure, the celltransmission enabling portion 31c of the non-bandwidth-guaranteed celltransmitting means 31 controls so that the input link number is outputfrom the arrival order control FIFO only at the time slot SOK whichallows transmission, and no input link number is output from the arrivalorder control FIFO at the time slot SNO which does not allowtransmission.

(b) Second Embodiment

(b-1) Structure

FIGS. 7 and 8 show the structure of a second embodiment of QOS controlwhen there are both a bandwidth-guaranteed connection call and anon-bandwidth-guaranteed connection call together. In the secondembodiment, with respect to a bandwidth-guaranteed connection call, ATMcells are transmitted to the output link by a traffic shaping systemtaking the quality class numbers into consideration, and with respect toa non-bandwidth-guaranteed connection call, ATM cells are transmitted tothe output link by a statistical multiplex system (cross-point buffersystem by FIFO read control). The quality class number is a numberspecifying each class when the required quality conditions (cell lossratio, delay time, etc.) are classified into a plurality of (n) classes.

In FIG. 7, the reference numerals 51 to 5N represent control informationadd-on circuits (tag adding portions) for attaching tags to the ATMcells for each of the input links #1 to #N from which the ATM cellsarrive at a speed of V, and replacing the VCI/VPI. The tag includes, forexample, routing information RH, information BTC indicating whether thecell belongs to a bandwidth-guaranteed connection call or anon-bandwidth-guaranteed connection call, and a number QCL specifyingthe quality class (cell loss ratio, delay time, etc.), as shown in FIG.3. The reference numeral 61 denotes a multiplexer for multiplexing allthe ATM cells arriving from the input links #1 to #N at a speed of V andoutputting the multiplexed cell at a speed of NV, 62 a shared buffer forstoring the ATM cells arriving from the multiplexer at a speed of NV, 63a shared buffer read/write controller for controlling thereading/writing operation of the shared buffer on the basis of the inputwrite address or read address and inhibiting writing according tocircumstances, and 64 a demultiplexer for separating the ATM cell havinga speed of N'V (N'≦N) which is read from the shared buffer on the basisof the routing information (tags) and transmitting the separated cellsto the output links #1 to #N. The reference numeral 70 denotes a QOScontrol portion for decisively allocating a bandwidth to each qualityclass for a bandwidth-guaranteed connection call and allocating abandwidth for a non-bandwidth-guaranteed connection call by astatistical multiplex system.

(b-2) QOS Control Portion

In FIG. 8, the reference numeral 71a represents anon-bandwidth-guaranteed cell identifying portion for judging whether aninput cell having a speed of NV is a bandwidth-guaranteed cell or anon-bandwidth-guaranteed cell, 71b a quality class identifier foridentifying the quality class number of an input cell on the basis ofthe tag information, and outputting a write enable signal to an addressmanagement FIFO corresponding to the identified quality class, whichwill be described later, and 71c an address management buffer portionwhich is provided with an address management buffer (address managementFIFO) in correspondence with each quality class number so as to queuethe addresses in the shared buffer 62 at which the ATM cells having thequality class number are stored. The address management buffer portion71c is provided with n address management buffers 71c-1 to 71c-n for therespective quality classes.

71d represents a second quality class identifier for identifying thequality class number of a non-bandwidth-guaranteed cell, 71e anarrival-order management FIFO memory for storing the quality classnumbers output from the quality class identifier 71d in the order ofarrival, 71f a write controller for writing a quality class number intothe arrival-order management FIFO memory 71e, 71g a bandwidth-guaranteedcell queue length calculator for calculating the queue length Qi of theATM cells which should be acquired in the shared buffer 62 for eachquality class in order to satisfy the quality conditions thereof, 71h athreshold calculator for calculating the queue length (threshold TH)which corresponds to a bandwidth allocated to a non-bandwidth-guaranteedconnection call by using each of the bandwidth-guaranteed cell queuelengths Q₁ to Q_(N) of each quality class, and 71i anon-bandwidth-guaranteed cell discarding controller.

When it is possible to accept a new bandwidth-guaranteed connectioncall, the bandwidth-guaranteed cell queue length calculator 71g computesthe queue length Qi in the shared buffer 62 which should be acquired inorder to satisfy the quality conditions of all calls having the sameclass number as the quality class number #i of the newbandwidth-guaranteed connection call. If it is assumed that thebandwidth which is already allocated to the quality class #i is R₀ andthe bandwidth of the bandwidth-guaranteed connection call of the qualityclass #i which is newly accepted by a connection admission control (CAC)is R_(n), the queue length Qi which is to be acquired in the sharedbuffer 62 in order to satisfy the quality conditions prescribed by thequality class #i is (R₀ +R_(n)).

If it is assumed that the buffer length of the shared buffer 62 is B,the threshold calculator 71h calculates the threshold TH from thefollowing formula:

    TH=B-ΣQi(i=1, 2, . . . n).

The non-bandwidth-guaranteed cell discarding controller 71i compares theactual queue length Q of the non-bandwidth-guaranteed connection callwith the threshold TH, and if Q>TH, the newly receivednon-bandwidth-guaranteed cell is discarded. In other words, if Q>TH, thenon-bandwidth-guaranteed cell discarding controller 71i 1 outputs awrite inhibition command WIH so as not to write thenon-bandwidth-guaranteed cell which has arrived at the shared buffer 62,2 does not write an address in the address management buffer 71c, and 3does not write a quality class number in the arrival-order managementFIFO memory 71e.

In the second embodiment, since the ATM cells from all the input linksare concentrated and multiplexed, there is an interference between inputlinks. For this reason, there is a case in which morenon-bandwidth-guaranteed cells than necessary are stored in the sharedbuffer 62, so that the quality conditions prescribed by each qualityclass are not satisfied. In order to prevent this, the thresholdcalculator 71h obtains the threshold TH which satisfies the qualityconditions prescribed by each quality class from the above formula, andthe non-bandwidth-guaranteed cell discarding controller 71i discards thenon-bandwidth-guaranteed cell beyond the threshold.

The reference numeral 71j represents a scheduling table. With respect tobandwidth-guaranteed connection calls, one period is divided into M timeslots, and the predetermined number of time slots which correspond toeach of the quality classes are allocated thereto. The quality classnumber is entered in the allocated time slots and "vacant" is entered ina time slot which is not allocated to any quality class number. In thiscase, the time slots having the quality class numbers are notconcentrated at one point of one period but evenly dispersed. Thereference numeral 71k denotes a first selector for selecting andoutputting a quality class number when it is read out of the schedulingtable 71j, while selecting and outputting the quality class number thatis read out of the head of the arrival-order management FIFO 71e when"vacant" is read out of the scheduling table 71j.

The reference numeral 71m represents a second selector for reading anaddress from one of the address management FIFOs 71c-1 to 71c-n which isdesignated by the quality class number output from the selector 71k andinputting the read address Ar to the read/write controller 63. Theread/write controller 63 reads an ATM cell from a position of the sharedbuffer 62 which is designated by the read address and inputs it to thedemultiplexer 64 at the subsequent stage (FIG. 7).

The reference numeral 71n denotes a vacant address management portion(vacant address management FIFO memory) for managing the vacantaddresses of the shared buffer 62, in which all the addresses of theshared buffer 62 are written in a predetermined order as vacantaddresses at the initiation. From the vacant address management FIFO71n, write addresses Aw are read in that order and received ATM cellsare written in the positions of the shared buffer 62 which aredesignated by the write addresses Aw. The write addresses Aw are thenstored in the address management FIFO 71c-i which corresponds to thequality class number of the received ATM cells. The address (readaddress) Ar which is read out of each address management FIFO 71c-i bythe selector 71m is input in the vacant address management FIFO 71n andstored therein as a vacant address.

The first and second selectors 71k, 71m and the vacant addressmanagement FIFO memory 71n constitute a shared buffer address controlmechanism.

(b-3) Operation as a Whole

When the ATM cells arrive from the input links #1 to #N, the tag addingportions 51 to 5N (FIG. 7) attaches tags thereto, and thereafter the ATMcells are input to the multiplexer 61. The multiplexer 61 multiplexesall the ATM cells arriving from the input links #1 to #N with the tagsattached thereto and outputs the multiplexed cell at a speed of NV. Theshared buffer 62 writes each of the received ATM cells at the positiondesignated by the write address Aw which is output from the vacantaddress management FIFO 71n (FIG. 8). The write address Aw is written inone of the address management FIFOs 71c-1 to 71c-n in correspondencewith the quality class number of the received ATM cell. By repeating thesame write operation as the above, the ATM cells are stored in theshared buffer 62 irrespective of kinds of the call, as well as the writeaddresses Aw are stored in the address management FIFOs 71c-1 to 71c-nin correspondence with the quality class numbers of the received ATMcells. At the same time, the quality class numbers of thenon-bandwidth-guaranteed cells are stored in the arrival-ordermanagement FIFO 71e in the order of arrival.

In parallel with this operation, when a bandwidth-guaranteed connectioncall generates and requests admission, a call processor (not shown)judges whether or not there is a vacant band which satisfies thebandwidth corresponding to the quality class number of the call by theconnection admission control (CAC), and if the answer is in theaffirmative, the call processor accepts the connection call. The callprocessor then allocates the number of time slots corresponding to thebandwidth (required bandwidth) so as to satisfy the quality conditionsof the quality class to which the connection call belongs from among theM time slots which constitute one period, and enters the quality classnumber into the allocated time slots. Calls are accepted in this way,and the remaining time slots are handled as "vacant".

The contents of the time slots in the scheduling table 71j are seriallyread out at a predetermined speed. When a quality class number is readout of the scheduling table 71j, the selectors 71k, 71m read the addressfrom the one of the address management FIFOs 71c-1 to 71c-n designatedby the quality class number and inputs the address to the read/writecontroller 63 and the vacant address management FIFO 71n.

The read/write controller 63 reads an ATM cell from the shared buffer 62on the basis of the read address and inputs it to the demultiplexer 64at the subsequent stage. The vacant address management FIFO 71n storesthe read address Ar read out of the address management FIFO 71c as avacant address.

On the other hand, when "vacant" is read out of the scheduling table71j, the selector 71k outputs a first quality class number from thearrival-order management FIFO 71e, and the selector 71m reads an addressAr from one of the address management FIFOs 71c-1 to 71c-n designated bythe quality class number and inputs the address to the read/writecontroller 63 and the vacant address management FIFO 71n. The read/writecontroller 63 reads an ATM cell from the shared buffer 62 on the basisof the read address Ar and inputs it to the demultiplexer 64 at thesubsequent stage. The vacant address management FIFO 71n stores the readaddress Ar read out of the address management FIFO 71c as a vacantaddress.

Similarly, the write control and read control with respect to the sharedbuffer 62 are repeated, and with respect to a bandwidth-guaranteedconnection call, it is possible to transmit cells so as to satisfy therequired bandwidth for each quality class. With respect tonon-bandwidth-guaranteed cells, it is possible to transmit them in theorder of arrival when no bandwidth-guaranteed cell is transmitted.

A quality class number is read out of the scheduling table 71j and anaddress of the shared buffer 61 is read out of one of the addressmanagement FIFOs 71c-1 to 71c-n designated by the quality class number.In this case, a bandwidth-guaranteed cell is expected to be stored atthis address. However, a non-bandwidth-guaranteed cell is sometimesstored. Reversely, when a quality class number is read out of thearrival-order management FIFO 71e and an address of the shared buffer 62is read out of the address management FIFO designated by the qualityclass number. In this case, a non-bandwidth-guaranteed cell is expectedto be stored at this address. However, there is a case where abandwidth-guaranteed cell is stored. These cases are however no problem.Putting together, with respect to a bandwidth-guaranteed connectioncall, it is possible to transmit cells so as to satisfy the requiredbandwidth, and with respect to a non-bandwidth-guaranteed connectioncall, it is possible to transmit cells in the order of arrival.

(b-4) Quality Guarantee Due to Non-Bandwidth-Guaranteed Cell Discarding

When ATM cells from all the input links are concentrated andmultiplexed, there is a case in which more non-bandwidth-guaranteedcells than necessary are stored in the shared buffer 62, so that thequality conditions prescribed by each quality class are not satisfied.

In order to prevent this, the bandwidth-guaranteed cell queue lengthcalculator calculates the bandwidth-guaranteed cell queue length Qi atthe time of reception of a new bandwidth-guaranteed connection call. Ifit is assumed that quality class number of the call is #i, the queuelength Qi which is to be acquired in the shared buffer 62 in order tosatisfy the quality conditions with respect to all the calls having thequality class number #i is computed. Thereafter, if it is assumed thatthe buffer length in the shared buffer 62 is B, the threshold calculator71g calculates the threshold TH from the following formula:

    TH=B-ΣQi(i=1, 2, . . . n).

The non-bandwidth-guaranteed cell discarding controller 71i compares theactual queue length (queue length in the arrival-order management FIFO71e) Q of the ATM cells of a non-bandwidth-guaranteed connection callwith the threshold TH, and if Q>TH, the non-bandwidth-guaranteed celldiscarding controller 71i issues the write inhibition command WIH so asto discard the newly received non-bandwidth-guaranteed cell.

In this manner, it never occurs that more non-bandwidth-guaranteed cellsthan necessary are stored in the shared buffer 62, and the qualityconditions prescribed by each quality class are satisfied.

(b-5) Modification

1 First Modification

In the above embodiment, the bandwidth which correspond to all vacanttime slots is allocated to a non-bandwidth-guaranteed connection call.However, there is a case in which regulation is desirable so that thebandwidth allocated to a non-bandwidth-guaranteed connection call doesnot exceed the required bandwidth. In such a case, the vacant time slotswhich are not allocated to any bandwidth-guaranteed connection call aredivided into 1 time slots at which ATM cells of anon-bandwidth-guaranteed connection call can be transmitted, and 2 timeslots at which ATM cells of a non-bandwidth-guaranteed connection callcannot be transmitted. It is possible to regulate the bandwidth which isallocated to a non-bandwidth-guaranteed connection call by adjusting thenumber of vacant time slots which allows transmission.

2 Second Modification

In the service control portion shown in FIG. 8, when many ATM cells of aspecific quality class number reach, it may become impossible tomaintain the qualities of other quality class numbers. FIG. 9 showsanother QOS control portion which is capable of maintaining certainly apredetermined quality with respect to all quality class numbers. Thesame reference numerals are provided for the elements which are the sameas those shown in FIG. 8. The reference numerals 71s-1 to 71s-nrepresent quality guaranteeing portions provided in correspondence withthe respective quality class numbers. This QOS control portion isdifferent from that shown in FIG. 8 in that these quality guaranteeingportions are provided.

FIG. 10 shows the structure of the quality guaranteeing portion. Thereference numeral 81 represents a storage portion for storing thebandwidth-guaranteed cell queue length Qi for the quality class #icalculated by the bandwidth-guaranteed cell queue length calculator 71g,82 a queue length monitor for monitoring the number (queue length) Pi ofbandwidth-guaranteed cells having the quality class number #i andremaining in the shared buffer 62, 83 a comparator for comparing thenumber Pi of remaining cells with the queue length Qi, and 84 an addressoutput controller. The address output controller 84 allows abandwidth-guaranteed ATM cell having the quality class number to bestored in the shared buffer 62 when Pi<Qi, so that the ATM cell writeaddress is input to and stored in the address management FIFO 71c-i.However, when Pi=Qi, the address output controller 84 prevents the nextATM cell having the quality class number #i from being stored in theshared buffer 62 and, hence, prevents the address from being input tothe address management FIFO 71c-i.

Due to this structure, it is possible to acquire the bandwidth so as tosecurely maintain the qualities of all the quality class numbers even ifmany cells having a specific quality class number reach.

(C) Congestion Control

(a) First Embodiment

(a-1) Structure

FIG. 11 shows the structure of a first embodiment of congestion control.

The reference numeral 111 represents a cell queuing FIFO memory (FIFObuffer) for storing a received ATM cell in a queue and transmitting thestored cell to the corresponding output link. The cell queuing FIFOmemory 111 corresponds to the FIFO memory shown in FIG. 22. Thereference numeral 121 a congestion/normal state monitor for detectingthe occurrence of a long-term congestion which is different from ashort-term congestion caused by simultaneous arrival of cells in anormal state, and judging whether or not the normal state is restoredfrom the long-term congestion under congestion avoiding control. Thereference numeral 131 represents a congestion avoiding control portionfor exerting congestion avoiding control wren a long-term congestionoccurs and ending the congestion avoiding control when a normal state isrestored from the long-term congestion.

The congestion/normal state monitor 121 uses a threshold X_(ON) whichrepresents the occurrence of a long-term congestion and a thresholdX_(OFF) (X_(ON) >X_(OFF)) which represents the restoration of a normalstate, and judges the fact that the observed value of the actual queuelength Y at every predetermined observation time T₀₁ consecutivelyexceeds the threshold X_(ON) a predetermined number N₀₁ (N₀₁ ≧1) oftimes to be the occurrence of a long-term congestion, while judging thefact that the observed value of the actual queue length Y at everypredetermined observation time T₀₂ under congestion avoiding control isconsecutively below the threshold X_(OFF) a predetermined number N₀₂(N₀₂ ≧1) of times to be the restoration to a normal state.

In this embodiment, the congestion avoiding control portion 131 iscomposed of a congestion indicator bit setting portion. The congestionindicator bit setting portion 131 sets a congestion indicator bitreferred to as an explicit forward congestion indicator EFCI bit in anATM cell (see FIG. 12) when transmitting the ATM cell at the time ofcongestion, while releasing the setting of the explicit forwardcongestion indicator EFCI bit when transmitting the ATM cell in a normalstate. The originating terminal which receives the explicit forwardcongestion indicator EFCI bit lowers the information transmission rateso as to prevent a cell loss and quickly restore a normal state.

In the congestion/normal state monitor 121, the reference numeral 121arepresents a queue length observing portion for observing the number Yof cells (queue length) which remain in the FIFO buffer 111 at apredetermined interval, and 121b a comparator for comparing the observedvalue with a threshold. The threshold X_(ON) which represents theoccurrence of a long-term congestion, the threshold X_(OFF) (X_(ON)>X_(OFF)) which represents the restoration of a normal state from along-term congestion, and the actual queue length Y are input to thecomparator 121b, and the comparator 121b compares the observed queuelength Y with the threshold X_(ON) at every predetermined observationtime T₀₁ in a normal state, and compares the observed queue length Ywith the threshold X_(OFF) at every predetermined observation time T₀₂at the time of a long-term congestion. The reference numeral 121cdenotes a counter portion for counting the number N of times Yconsecutively becomes Y≧X_(ON) and the number M of times Y consecutivelybecomes Y≦X_(OFF). The reference numeral 121d represents a congestionjudging portion for comparing the count number N with a prescribednumber N₀₁ of times (N₀₁ ≧1) and judging that there is a long-termcongestion when N≧N₀₁, in other words, when the queue length Yconsecutively exceeds the threshold X_(ON) the predetermined number N₀₁of times. The reference numeral 121e represents a normal state judgingportion for comparing the count number M with a prescribed number N₀₂ oftimes (N₀₂ ≧1) and judging that a normal state is restored, when M≧N₀₂,in other words, when the queue length Y is consecutively below thethreshold X_(OFF) the predetermined number N₀₂ of times.

The congestion/normal state monitor 121 does not exert control forending the congestion avoiding control for a preset time T_(CTRL) afterthe start of the congestion avoiding control. More specifically, thecomparator 121b does not compare the observed queue length Y with thethreshold X_(OFF) until a predetermined time T_(CTRL) has passed. Inthis way, it is possible to prevent an oscillation phenomenon that theoperations of starting and ending congestion avoiding control arefrequently repeated.

(a-2) Operation as a Whole

FIG. 13 is a flow chart of a congestion control process. It is assumedthat the ATM network is in a normal state at the initiation.

The congestion/normal state monitor 121 observes the queue length Y ofthe buffer 111 at every predetermined observation time T₀₁ (step 201),then judges whether or not Y≧X_(ON) (step 202) and if Y<X_(ON), thecongestion/normal state monitor 121 resets the number N of comparisontimes to 0 and continues the observation of the queue length (steps 203,204). The process thereafter returns to the step 201.

On the other hand, if Y≧X_(ON) at the step 202, 1 is added to the count(initial value is 0) number N of times (N+1→N, step 205). Judgement isthen made as to whether or not N=N₀₁ (step 206), and if N<N₀₁, theprocess returns to the step 201 to repeat the subsequent processing.

However, if N=N₀₁, it is judged that a long-term congestion hasoccurred, and the count number N is cleared to 0 (step 207) and the factis informed to the congestion indicator bit setting portion 131. Thecongestion indicator bit setting portion 131 then stores the fact that along-term congestion has occurred, and turns on the explicit forwardcongestion indicator EFCI bit of the ATM cell until a normal state isrestored (step 208).

Thereafter, the predetermined time T_(CTRL) is added to the current timeT_(NOW) so as to calculate the starting time T_(ob) of the processing ofjudging whether or not a normal state has been restored from thelong-term congestion, and the congestion/normal state monitor 121 waitsuntil T_(NOW) =T_(ob) (steps 209 210). When T_(NOW) ≧T_(ob), thecongestion/normal state monitor 121 observes the queue length Y of thebuffer 111 at every predetermined observation time T₀₂ (step 211), thenjudges whether or not Y≦X_(OFF) (step 212), and if Y>X_(OFF), thecongestion/normal state monitor 121 resets the number M of comparisontimes to 0 and continues the observation of the queue length (steps 213,214). The process thereafter returns to the step 211.

On the other hand, if Y≦X_(OFF) at the step 212, 1 is added to the count(initial value is 0) number M of times (M+1→M, step 215). Judgement isthen made as to whether or not M=N₀₂ (step 216), and if M<N₀₂, theprocess returns to the step 211 to repeat the subsequent processing.

However, if M=N₀₂, it is judged that a normal state has been restoredfrom the long-term congestion, and the count number M is cleared to 0(step 217) and the fact is informed to the congestion indicator bitsetting portion 131. The congestion indicator bit setting portion 131then stores the fact that a normal state has been restored, and turnsoff the explicit forward congestion indicator EFCI bit of the ATM cell(step 218).

(b) Second Embodiment

FIG. 14 shows the structure of a second embodiment of congestioncontrol. The same reference numerals are provided for the elements whichare the same as those in the first embodiment shown in FIG. 11. Thereference numeral 121f represents a maximum queue length recordingportion for monitoring the maximum queue lengths in the predeterminedtime T₀₁ and the predetermined time T₀₂, respectively, and holding therespective maximum queue lengths.

In the first embodiment, the queue lengths Y at the predetermined timeT₀₁ and the predetermined time T₀₂ are compared with the thresholdsX_(ON) and X_(OFF), respectively, but in the second embodiment, themaximum queue lengths in the predetermined time T₀₁ and in thepredetermined time T₀₂ are held, and the respective maximum queuelengths are compared with the thresholds X_(ON) and X_(OFF) at everypredetermined time T₀₁ and at every predetermined time T₀₂,respectively.

The threshold X_(ON) which represents the occurrence of a long-termcongestion and the threshold X_(OFF) (X_(ON) >X_(OFF)) which representsthe restoration of a normal state are set in advance. The queue lengthobserving portion 121a of the congestion/normal state monitoring means121 observes the queue length for the predetermined observation time T₀₁and the maximum queue length recording portion 121f holds the maximumqueue length Y_(max) in that period. The comparator 121b, the counterportion 121c and the congestion judging portion 121d judge the fact thatthe maximum queue length read out of the maximum queue length recordingportion 121f at every predetermined observation time T₀₁ consecutivelyexceeds the threshold X_(ON) the predetermined number N₀₁ (N₀₁ ≧1) oftimes to be the occurrence of a long-term congestion.

While congestion avoiding control is executed, the queue lengthobserving portion 121a observes the queue length for the predeterminedobservation time T₀₂ and the maximum queue length recording portion 121fholds the maximum queue length Y_(max) in that period. The comparator121b, the counter portion 121c and the normal state judging portion 121ejudge the fact that the maximum queue length read out of the maximumqueue length recording portion 121f at every predetermined observationtime T₀₂ is consecutively below the threshold X_(OFF) the predeterminednumber N₀₂ (N₀₂ ≧1) of times to be the restoration to a normal state.

As described above, according to the first and second embodiments, it ispossible to discriminate a long-term congestion from a short-termcongestion and securely detect a long-term congestion by a simplestructure. It is also possible to quickly restore a normal state bycongestion avoiding control. In addition, it is possible to avoid anoscillation phenomenon that the operations of starting and endingcongestion avoiding control are frequently repeated by inhibiting thecontrol for ending the congestion avoiding control for the predeterminedtime T_(CTRL) after the start of the congestion avoiding control.

In a conventional system with a threshold provided in a buffer, thedifficulty in determining the threshold with the form of informationflowing into the buffer taken into consideration is a problem. Accordingto these embodiments, it is possible to obviate the difficulty becauseit is possible to take the form of information flowing into the bufferinto consideration by comparing the queue length or the maximum queuelength observed at every predetermined time with a threshold apredetermined number of times.

(c) Congestion Notice and Congestion Avoiding Control

A long-term congestion occurs when an ATM network is utilized as a relaynetwork of communication networks such as frame relay networks. FIG. 15shows the structure of such a network. The reference numeral 301 denotesa originating terminal, 302 a terminating terminal, 303 and 304 framerelay networks (FR networks), 305 an ATM network as a relay network, and306 and 307 inter-network units which serve as interfaces betweendifferent networks.

In such a network, when a cell loss is caused in the ATM network 305, itis impossible to set up a frame in the frame relay networks 303, 304, sothat the frames are lost. In other words, a frame loss is caused. Whensuch a frame loss is caused, retransmission control is executed, asexplained in FIG, 30. When a plurality of lines simultaneously executeretransmission control, the congestion is deteriorated due to anincrease in the load, which leads to a long-term congestion.

To prevent this, when a long-term congestion is detected in the network,it is necessary to inform the originating terminal 301 of the long-termcongestion so as to lower the frame transmission rate in order torestore a normal state.

FIG. 16 shows the structure of an FR frame. The symbol SF denotes astart flag portion, AF an address field portion (frame header portion),UD a user data portion, EC an error detecting portion, and EF an endflag. The address field AF is composed of, for example, 2 bytes, andincludes a data link connection identifier DLCI which indicates thedestination, a command/response indicator bit C/R, an address fieldextension EA bit, a forward congestion notice FECN bit for notifying acongestion in the forward direction (from the network to thedestination), a backward congestion notice BECN bit for notifying acongestion in the backward direction (from the network to theoriginating terminal), and a discardable frame indicator DE bit.

FIGS. 17 and 18 explain a congestion notifying process and a normalstate restoration notifying process.

The originating terminal 301 transmits a frame to the frame relaynetwork 303, and the frame relay network 303 transmits the frame to theinter-network unit 306. The inter-network unit 306 analyzes the frameand assembles an ATM cell and transmits the ATM cell to the ATM network305. The ATM switch 308 of the ATM network judges whether or not along-term congestion has occurred by the above-described method, and ifthe ATM network is judged to be normal, the ATM switch 308 transfers theexplicit forward congestion indicator EFCI bit as it is ("0"). On theother hand, if a long-term congestion is detected, the ATM switch 308sets the explicit forward congestion indicator EFCI bit to "1" beforetransferring the ATM cell.

When the inter-network unit 307 receives the ATM cell, it analyzes theATM cell so as to assemble a frame, and judges whether or not the EFCIbit is off ("0", normal state). If the EFCI bit is off (normal state),the FECN bit in the frame is set to "0". On the other hand, if the EFCIbit is on ("1", a long-term congestion), the FECN bit in the frame isset to "1" so as to notify the occurrence of a long-term congestion. Theterminating terminal 302 judges whether or not the EFCI bit is "1", ittransmits the frame with BECN="1" backward to the originating terminal301, if the EFCI bit is "1". When the originating terminal receives theframe having BECN=1, it recognizes that a long-term congestion hasoccurred in the ATM network, and lowers the frame transmission rate.Since such control is executed for each communication, the long-termcongestion in the ATM network is ameliorated and a normal state isquickly restored.

If the ATM network restores a normal state, the explicit forwardcongestion indicator EFCI bit of the ATM cell is turned off (="0"), andthe FECN bit of the frame becomes "0", so that the terminating terminal302 transmits the frame with BECN=0 to the originating terminal 301.When the originating terminal 301 receives the frame having BECN=0, itrecognizes that the ATM network has restored a normal state, andgradually raises the frame transmission rate to the original rate.

While there has been described what are at present considered to bepreferred embodiments of the invention, it will be understood thatvarious modifications may be made thereto, and it is intended that theappended claims cover all such modifications as fall within the truespirit and scope of the invention.

As described above, the scheduler allocates the predetermined number oftime slots which correspond to a required bandwidth to abandwidth-guaranteed connection call from among the N time slots whichconstitute one period, and schedules so that an ATM cell is read fromthe corresponding buffer at an allocated time slot and that it istransmitted to the output link. The non-bandwidth-guaranteed celltransmitting means reads an ATM cell of the non-bandwidth guaranteedconnection call from the corresponding buffer and transmits it to theoutput link at a time slot which is not allocated to anybandwidth-guaranteed connection call. Therefore, according to thepresent invention, an ATM exchange can utilize both a statisticalmultiplex system and a traffic shaping system to have the respectivemerits. In other words, by decisively allocating a necessary bandwidthto a bandwidth-guaranteed connection call which is required to have apredetermined QOS, it is possible to transmit ATM cells having such aquality to an output link. On the other hand, it is possible to transmitATM cells of a non-bandwidth-guaranteed connection call to the outputlink in such a manner as to enhance the utilization of the output link.

The scheduler allocates the number of time slots which correspond to therequired bandwidth for each bandwidth-guaranteed connection call andenters the number of an input link which accommodates the call in theallocated time slots. The scheduler schedules so that cells are readfrom the buffers which correspond to the input link at the allocatedtime slots and that they are transmitted to the output link.Accordingly, it is possible to decisively allocate a necessary bandwidthfor each connection or each input link and to transmit ATM cells,thereby maintaining a predetermined QOS.

Furthermore, the ATM exchange is also provided with a shared buffer forstoring ATM cells which arrive from one input link at a multiplex speedof N·V, and address management buffers corresponding to respectivequality class numbers for specifying the quality conditions. Theaddresses in the shared buffer for storing ATM cells are queued in theaddress management buffers which correspond to the quality class numbersof the ATM cells. With respect to a bandwidth-guaranteed connectioncall, the scheduler allocates the number of time slots which correspondto the required bandwidth which is necessary for satisfying the qualityclass of the call and enters the quality class number in thecorresponding allocated slots. In this state, the scheduler schedules sothat the address is read from the address management buffer designatedby the quality class number at each time slot and that an ATM cell isread from the shared buffer on the basis of the read address andtransmitted to the output link. According to this structure, it ispossible to decisively allocate the necessary bandwidth for each qualityclass and transmit ATM cells, thereby maintaining a predetermined QOS.

According to the present invention, the time slots which are notallocated to any bandwidth-guaranteed connection call are divided into 1time slots at which ATM cells of a non-bandwidth-guaranteed connectioncall can be transmitted and 2 time slots at which ATM cells cannot betransmitted, and ATM cells of a non-bandwidth-guaranteed connection callare transmitted only at the time slots at which ATM cells can betransmitted. It is therefore possible to regulate the allocation of abandwidth to a non-bandwidth-guaranteed connection call so as not toexceed a predetermined bandwidth. It is also possible to efficientlytransmit cells of a non-bandwidth-guaranteed connection call in theorder of arrival in accordance with the cross-point buffer system byFIFO read control.

In addition, according to the present invention, the queue length Qi ofa shared buffer which should be maintained in order to satisfy thequality conditions of all calls having the same quality class number #iis computed, and a threshold is set at the value obtained by subtractingthe queue length Qi (i=1, 2, . . . ) of all the quality classes from ashared buffer length B. When the number of cells of anon-bandwidth-guaranteed connection call stored in the shared bufferbecomes equal to the threshold, it is thereafter inhibited to write ATMcells of a non-bandwidth-guaranteed connection call into the sharedbuffer. Due to this structure, it is possible to acquire a necessarybandwidth for the bandwidth-guaranteed connection call even if ATM cellsof a non-bandwidth-guaranteed connection call frequently reach.

According to the present invention, the queue length Qi in a sharedbuffer which should be maintained in order to satisfy the qualityconditions of a quality class #i is obtained for each quality class, andthe number of ATM cells of the bandwidth-guaranteed connection callshaving a predetermined quality class number #i which remain in theshared buffer is monitored for each quality class number. When thenumber of remaining cells is equal to the queue length Qi, the ATM cellof a bandwidth-guaranteed connection call having the quality classnumber #i which reaches next is discarded. Due to this structure, it ispossible to acquire the bandwidth so as to securely maintain thequalities of all the quality classes even if many cells having aspecific quality class number reach.

According to the present invention, the occurrence of a long-termcongestion which is different from a short-term congestion caused bysimultaneous arrival of cells is detected, and whether or not a normalstate is restored from the congestion is judged under congestionavoiding control. Since congestion avoiding control is exerted at theoccurrence of a long-term congestion, and it is ended when a normalstate is restored from the congestion, it is possible to detect along-term congestion discriminated from a short-term congestion andquickly restore a normal state.

Furthermore, according to the present invention, it is possible to avoidan oscillation phenomenon that the operations of starting and endingcongestion avoiding control are frequently repeated by inhibitingcontrol for ending congestion avoiding control for a predetermined timeafter the start of the congestion avoiding control.

In the present invention, a threshold X_(ON) which represents theoccurrence of a long-term congestion and a threshold X_(OFF) (X_(ON)>X_(OFF)) which represents the restoration of a normal state are set inadvance. The congestion/normal state monitoring means judges the factthat the observed value of the queue length at every predeterminedobservation time T₀₁ consecutively exceeds the threshold X_(ON) apredetermined number N₀₁ (N₀₁ ≧1) of times to be the occurrence of along-term congestion, while judging the fact that the observed value ofthe queue length at every predetermined observation time T₀₂ undercongestion avoiding control is consecutively below the threshold X_(OFF)a predetermined number N₀₂ (N₀₂ ≧1) of times to be the restoration to anormal state. Alternatively, the congestion/normal state monitoringmeans 121 judges the fact that the maximum queue length of the buffer inevery predetermined observation time T₀₁ consecutively exceeds thethreshold X_(ON) a predetermined number N₀₁ (N₀₁ ≧1) of times to be theoccurrence of a long-term congestion, while judging the fact that themaximum queue length in every predetermined observation time T₀₂ undercongestion avoiding control is consecutively below the threshold X_(OFF)a predetermined number N₀₂ (N₀₂ ≧1) of times to be the restoration to anormal state.

According to this structure, it is possible to discriminate a long-termcongestion from a short-term congestion and securely detect a long-termcongestion by a simple structure. It is also possible to quickly restorea normal state by congestion avoiding control. In addition, it ispossible to avoid an oscillation phenomenon that the operations ofstarting and ending congestion avoiding control are frequently repeatedby inhibiting the control for ending the congestion avoiding control fora predetermined time T_(CTRL) after the start of the congestion avoidingcontrol.

In addition, according to the present invention, it is possible toobviate the difficulty in determining a threshold with the form ofinformation flowing into a buffer taken into consideration, which is aproblem in a conventional system with the threshold provided in thebuffer, by observing a change in the queue length.

We claim:
 1. An ATM exchange for transmitting ATM cells which arrivefrom an input link to an output link, comprising:in a case where thereare simultaneously both bandwidth-guaranteed connection call whichincludes a required bandwidth to be guaranteed andnon-bandwidth-guaranteed connection call which does not require abandwidth to be guaranteed and information of which may be transmittedwhen no information of said bandwidth-guaranteed connection call istransmitted, a scheduler for allocating the number of time slots whichcorrespond to said required bandwidth of said bandwidth-guaranteedconnection call from among the N time slots which constitute one period,and scheduling so as to transmit ATM cell at each allocated time slot;and a non-bandwidth-guaranteed cell transmitting means for transmittingATM cells of said non-bandwidth-guaranteed connection call at time slotswhich are not allocated to any bandwidth-guaranteed connection call. 2.An ATM exchange according to claim 1, wherein said scheduler dividessaid time slots which are not allocated to any bandwidth-guaranteedconnection call into time slots at which ATM cells of saidnon-bandwidth-guaranteed connection call can be transmitted and timeslots at which said ATM cells cannot be transmitted and saidnon-bandwidth-guaranteed cell transmitting means transmits ATM cells ofsaid non-bandwidth-guaranteed connection call only at said time slots atwhich ATM cells of said no-bandwidth guaranteed connection call can betransmitted.
 3. An ATM exchange according to claim 1, wherein saidnon-bandwidth-guaranteed cell transmitting means transmits ATM cells ofsaid non-bandwidth-guaranteed connection call in the order of arrival.4. An ATM exchange for transmitting ATM cells which arrive from an inputlink to an output link, comprising:in a case where there aresimultaneously both a bandwidth-guaranteed connection call whichrequires a bandwidth to be guaranteed and a non-bandwidth-guaranteedconnection call which does not require a bandwidth to be guaranteed andinformation of which may be transmitted when no information of saidbandwidth-guaranteed connection call is transmitted, a tag addingportions provided for each input link so as to attach a tag includingrouting information and information indicating whether an ATM cellbelongs to said bandwidth-guaranteed connection call or saidnon-bandwidth-guaranteed connection call to a received ATM cell, abuffer provided for each input link so as to store an ATM cell in aqueue which is to be transmitted to an output link; an arrival-ordermanagement memory for storing the data which specify the buffers forstoring the ATM cells of said non-bandwidth-guaranteed connection callin the order of arrival; a scheduling table in which the number of timeslots which correspond to the required bandwidth of saidbandwidth-guaranteed connection call are allocated to saidbandwidth-guaranteed connection call from among M time slots whichconstitute one period, the number of an input link for accommodatingsaid bandwidth-guaranteed connection call is entered in the allocatedtime slots, and "vacant" is entered in a time slot which is notallocated to any bandwidth-guaranteed connection call; and an ATM celltransmission control portion for reading an input link numbercorresponding to a time slot from said scheduling table at every timeslot, and transmitting an ATM cell from the buffer which is designatedby said input link number to the output link when said input link numberis entered in said time slot, while reading an ATM cell from the bufferwhich is designated by the data extracted from the head of saidarrival-order management memory and transmitting said ATM cell to saidoutput link when no input link number is written in said time slot. 5.An ATM exchange according to claim 4, whereinsaid time slots which arenot allocated to any bandwidth-guaranteed connection call are dividedinto time slots at which ATM cells of said non-bandwidth-guaranteedconnection call can be transmitted and time slots at which said ATMcells of said non-bandwidth guaranteed connection call cannot betransmitted, and the classification is entered in said scheduling table;and said ATM cell transmission control portion transmits ATM cells ofsaid non-bandwidth-guaranteed connection call only at said time slots atwhich ATM cells of said non-bandwidth-guaranteed connection call can betransmitted.
 6. An ATM exchange for transmitting ATM cells which arrivefrom an input link to an output link, comprising:in a case where thereare simultaneously both a bandwidth-guaranteed connection call whichrequire a bandwidth to be guaranteed and a non-bandwidth-guaranteedconnection call which does not require a bandwidth to be guaranteed andinformation of which may be transmitted when no information of saidbandwidth-guaranteed connection call is transmitted, a shared buffer forstoring ATM cells which arrive from one input link at a multiplex speedof N V, wherein N is the number of input links and V is the speed atwhich the ATM cells arrive at the shared buffer; an address managementbuffer provided in correspondence with each quality class for specifyingthe quality conditions so as to store in a queue the addresses of saidshared buffer in which ATM cells having the quality class number of saidquality class are stored; a means for identifying an ATM cell of saidnon-bandwidth-guaranteed connection call be reference to informationattached to said ATM cell so as to indicate whether said ATM cellbelongs to said bandwidth-guaranteed connection call or saidnon-bandwidth-guaranteed connection call; an arrival-order managementmemory for storing the quality call numbers attached to ATM cells ofsaid non-bandwidth-guaranteed connection call in the order of arrival; ascheduling table in which the number of time slots which guarantee thequality of each quality class are allocated to said each quality classfrom among M time slots which constitute one period, the quality classnumber of each quality class is entered in the allocated time slots, and"vacant" is entered in a time slot which is not allocated to any qualityclass; a shared buffer address management mechanism for reading aquality class number corresponding to a time slot from said schedulingtable at every time slot, and reading an address from the addressmanagement buffer which is designated by said quality class number whensaid quality class number is entered in said time slot, while reading anaddress from the buffer which is designated by the quality class numberextracted from the head of said arrival-order management memory when noquality class number is entered in said time slot; and a data readcontrol portion for reading the ATM cell from the shared buffer on thebasis of said address read from the shared buffer and outputting it. 7.An ATM exchange according to claim 6, further comprising:a means forobtaining the queue length Qi in said shared buffer which should bemaintained in order to satisfy the quality conditions of all callshaving the same quality class number as that of a newbandwidth-guaranteed connection call and setting a threshold at thevalue obtained by subtracting said queue length Qi (i=1, 2, . . . ) ofall the quality classes from a shared buffer length B, when said newbandwidth-guaranteed connection call is accepted; and a means forinhibiting any ATM cell of said non-bandwidth-guaranteed connection callfrom being written into said shared buffer and a quality class numberfrom being stored in said arrival-order management FIFO memory when thenumber of quality class numbers stored in said arrival-order managementFIFO memory becomes equal to said threshold.
 8. An ATM exchangeaccording to claim 6, further comprising:a means for obtaining the queuelength Qi in said shared buffer which should be maintained in order tosatisfy the quality conditions of all calls having the same qualityclass number for each quality class number; and a means for monitoringthe number of ATM cells of said bandwidth-guaranteed connection callhaving the same quality class number which are stored in said sharedbuffer for each quality class number, and discarding the newly receivedATM cell of said bandwidth-guaranteed connection call when the number ofthe stored cells is equal to said queue length.
 9. An ATM exchange fortransmitting ATM cells which arrive from an input link to an outputlink, comprising:a queuing buffer for storing in a queue received cellsin correspondence with output link and serially transmitting the queuedcells to the corresponding output link; and a congestion/normal statemonitoring means for detecting the occurrence of a long-term congestionwhich is different from a short-term congestion caused by simultaneousarrival of cells in a normal state, and judging whether or not a normalstate is restored from said long-term congestion under congestionavoiding control; wherein said congestion/normal state monitoring meanssetting in advance a queue length which is regarded as the occurrence ofsaid long-term congestion, in said queuing buffer and comparing theactual queue length with said queue length so as to detect theoccurrence of said long-term congestion.
 10. An ATM exchange fortransmitting ATM cells which arrive from an input link to apredetermined output link, comprising:a queuing buffer for storing in aqueue received cells in correspondence with output link and seriallytransmitting the queued cells to the corresponding output link; and acongestion/normal state monitoring means for detecting the occurrence ofa long-term congestion which is different from a short-term congestioncaused by simultaneous arrival of cells in a normal state, and judgingwhether or not a normal state is restored from said long-term congestionunder congestion avoiding control; wherein said congestion/normal statemonitoring means setting in advance a queue length which is regarded asthe occurrence of said long-term congestion, in said queuing buffer andcomparing the actual queue length with said queue length so as to detectthe occurrence of said long-term congestion; wherein saidcongestion/normal state monitoring means includes: means for setting athreshold X_(ON) which represents the occurrence of said long-termcongestion and a threshold X_(OFF) (X_(ON) >X_(OFF)) which representsthe restoration of a normal state from said long-term congestion; ameans for observing said queue length of said buffer; and a judgingmeans for judging the fact that the observed value of said queue lengthat every predetermined observation time T₀₁ consecutively exceeds saidthreshold X_(ON) a predetermined number N₀₁ (N₀₁ ≧1) of times to be theoccurrence of said long-term congestion, while judging the fact that theobserved value of said queue length at every predetermined observationtime T₀₂ under congestion avoiding control is consecutively below saidthreshold X_(OFF) a predetermined number N₀₂ (N₀₂ ≧1) of times to be therestoration to a normal state.
 11. An ATM exchange for transmitting ATMcells which arrive from an input link to a predetermined output link,comprising:a queuing buffer for storing in a queue received cells incorrespondence with output link and serially transmitting the queuedcells to the corresponding output link; and a congestion/normal statemonitoring means for detecting the occurrence of a long-term congestionwhich is different from a short-term congestion caused by simultaneousarrival of cells in a normal state, and judging whether or not a normalstate is restored from said long-term congestion under congestionavoiding control; wherein said congestion/normal state monitoring meanssetting in advance a queue length which is regarded as the occurrence ofsaid long-term congestion, in said queuing buffer and comparing theactual queue length with said queue length so as to detect theoccurrence of said long-term congestion; wherein said congestion/normalstate monitoring means includes: a means for setting a threshold X_(ON)which represents the occurrence of said long-term congestion and athreshold X_(OFF) (X_(ON) >X_(OFF)) which represents the restoration ofa normal state from said long-term congestion; a means for observing themaximum queue length of said buffer in every predetermined observationtime; and a means for judging the fact that the maximum queue length ofsaid buffer in every predetermined observation time T₀₁ consecutivelyexceeds said threshold X_(ON) a predetermined number N₀₁ (N₀₁ ≧1) oftimes to be the occurrence of said long-term congestion, while judgingthe fact that the maximum queue length at every predeterminedobservation time T₀₂ under congestion avoiding control is consecutivelybelow said threshold X_(OFF) a predetermined number N₀₂ (N_(O2) ≧1) oftimes to be the restoration to a normal state.
 12. An ATM exchangeaccording to claim 9, wherein no control for ending said congestionavoiding control is executed for a predetermined time T_(CTRL) after thestart of said congestion avoiding control.
 13. An ATM exchange fortransmitting ATM cells of first type call and ATM cells of second typecall which arrive from input links to an output link, comprising:an ATMcell storing means for storing the ATM cells which arrive from the inputlinks; a transmission time storing means for storing transmission timeat which the ATM cells of the first type call are transmitted to theoutput link so as to guarantee a bandwidth which the first type callrequires; a first cell transmission means for transmitting the ATM cellsof the first type call stored in the ATM cell storing means to theoutput link in accordance with the stored transmission time; and asecond cell transmission means for transmitting the ATM cells of thesecond type call stored in the ATM cell storing means to the output linkat the different transmission time from the stored transmission time.